অ্যাঙ্গুলার ম্যাটেরিয়াল হলো Google এর তৈরি একটি UI Component Library, যা Angular অ্যাপ্লিকেশনের জন্য বিভিন্ন রিচ ইন্টারফেস কম্পোনেন্ট সরবরাহ করে। Angular Material-এর মূল লক্ষ্য হলো Angular ডেভেলপারদের সহজে Responsive, Modern এবং Material Design Guidelines অনুসারে ইউজার ইন্টারফেস তৈরি করতে সাহায্য করা। এটি Google এর Material Design এর ওপর ভিত্তি করে নির্মিত এবং Angular এর সাথে সহজেই ইন্টিগ্রেট করা যায়।
Angular Material হলো Google Material Design নির্দেশিকার উপর ভিত্তি করে তৈরি একটি UI কম্পোনেন্ট লাইব্রেরি, যা Angular অ্যাপ্লিকেশনগুলিতে দ্রুত এবং উন্নত ইউজার ইন্টারফেস তৈরির জন্য ব্যবহৃত হয়। এটি ডেভেলপারদের responsive, accessible, এবং modern UI তৈরি করতে সাহায্য করে। Angular Material এর বিভিন্ন প্রি-বিল্ট কম্পোনেন্ট এবং ডিরেক্টিভ ব্যবহার করে সহজেই একটি স্টাইলিশ এবং ফাংশনাল অ্যাপ্লিকেশন ডিজাইন করা যায়।
Angular Material অনেক ধরনের pre-built UI components সরবরাহ করে, যা দিয়ে সহজে উন্নত ফিচারযুক্ত UI তৈরি করা যায়। এগুলোর মধ্যে রয়েছে:
Angular Material-এর প্রায় সব কম্পোনেন্ট responsive। এটি Grid Layout এবং Flexbox Layout এর মাধ্যমে বিভিন্ন ডিভাইস এবং স্ক্রিন সাইজে উপযোগী UI তৈরি করতে পারে।
Angular Material পুরোপুরি customizable। আপনি সহজেই এর থিম, রঙ, টেক্সট স্টাইল এবং UI উপাদানগুলো কাস্টমাইজ করতে পারবেন, যা আপনার ব্র্যান্ডিং বা অ্যাপ্লিকেশন ডিজাইনের সাথে মিলবে।
Angular Material এর সব কম্পোনেন্ট accessible হিসেবে ডিজাইন করা হয়েছে, যা WCAG (Web Content Accessibility Guidelines) মেনে তৈরি। এটি নিশ্চিত করে যে, অ্যাপ্লিকেশনটি বিশেষ প্রয়োজনের ব্যবহারকারীদের জন্যও সহজে ব্যবহারযোগ্য।
Angular Material theming সাপোর্ট করে, যা দিয়ে ডিফল্ট থিম পরিবর্তন করে কাস্টম থিম তৈরি করা যায়। আপনি প্রাইমারি, একসেন্ট, এবং ওয়ার্ন রঙ পরিবর্তন করতে পারবেন।
Angular Material আপনার প্রোজেক্টে ইন্সটল করতে নিচের কমান্ডটি ব্যবহার করুন:
ng add @angular/material
এই কমান্ডটি চালানোর পর, এটি আপনাকে বিভিন্ন স্টাইল অপশন (global typography, animation) এবং থিম সিলেকশন অপশন দেখাবে।
ইন্সটলেশনের পর, আপনি প্রয়োজনীয় Material কম্পোনেন্টগুলো AppModule এ ইম্পোর্ট করতে পারবেন। উদাহরণস্বরূপ, একটি বাটন কম্পোনেন্ট ইম্পোর্ট করতে:
import { MatButtonModule } from '@angular/material/button';
@NgModule({
imports: [
MatButtonModule
]
})
export class AppModule { }
Angular Material এর থিম সেট করতে, আপনার styles.css বা styles.scss ফাইলে একটি থিম ইম্পোর্ট করতে হবে। উদাহরণ:
@import '~@angular/material/prebuilt-themes/indigo-pink.css';
এছাড়াও, আপনি কাস্টম থিমও তৈরি করতে পারেন:
@import '~@angular/material/theming';
@include mat-core();
$custom-theme: mat-light-theme((
color: (
primary: mat-palette($mat-indigo),
accent: mat-palette($mat-pink),
),
typography: mat-typography-config()
));
@include angular-material-theme($custom-theme);
Angular Material এর Button কম্পোনেন্ট ব্যবহার করে বিভিন্ন ধরনের বাটন তৈরি করা যায়:
<button mat-button>Basic Button</button>
<button mat-raised-button>Raised Button</button>
<button mat-icon-button>
<mat-icon>favorite</mat-icon>
</button>
Material এর Toolbar কম্পোনেন্ট দিয়ে অ্যাপ্লিকেশনের জন্য টপবার তৈরি করা যায়:
html
Copy code
<mat-toolbar color="primary">
<span>My App</span>
</mat-toolbar>
Card কম্পোনেন্ট বিভিন্ন কন্টেন্ট এবং মিডিয়া প্রদর্শনের জন্য ব্যবহার করা হয়:
<mat-card>
<mat-card-header>
<mat-card-title>Angular Material</mat-card-title>
</mat-card-header>
<mat-card-content>
<p>Angular Material provides modern UI components for Angular applications.</p>
</mat-card-content>
</mat-card>
Angular Material এর Table কম্পোনেন্ট দিয়ে ডেটা টেবিল তৈরি করা যায়:
<table mat-table [dataSource]="dataSource">
<ng-container matColumnDef="position">
<th mat-header-cell *matHeaderCellDef> Position </th>
<td mat-cell *matCellDef="let element"> {{element.position}} </td>
</ng-container>
<!-- আরও কলাম সংযোজন করা যেতে পারে -->
<tr mat-header-row *matHeaderRowDef="displayedColumns"></tr>
<tr mat-row *matRowDef="let row; columns: displayedColumns;"></tr>
</table>
Dialog ব্যবহার করে পপ-আপ ডায়ালগ তৈরি করা যায়:
import { MatDialog } from '@angular/material/dialog';
@Component({...})
export class MyComponent {
constructor(public dialog: MatDialog) {}
openDialog() {
const dialogRef = this.dialog.open(MyDialogComponent);
dialogRef.afterClosed().subscribe(result => {
console.log(`Dialog result: ${result}`);
});
}
}
Angular Material হলো একটি অত্যন্ত কার্যকর UI Framework, যা Google এর Material Design নির্দেশিকার উপর ভিত্তি করে তৈরি। এটি ডেভেলপারদের Angular অ্যাপ্লিকেশনে দ্রুত এবং উন্নতমানের UI তৈরি করতে সাহায্য করে। Angular Material এর বিভিন্ন প্রি-বিল্ট কম্পোনেন্ট, থিমিং অপশন এবং স্টাইলিং ক্ষমতা অ্যাপ্লিকেশন ডিজাইনকে আরও মডার্ন এবং ইন্টারেক্টিভ করে তোলে।